//package org.budo.support.jetty.handler;
//
//import java.io.IOException;
//
//import javax.servlet.ServletException;
//import javax.servlet.http.HttpServletRequest;
//import javax.servlet.http.HttpServletResponse;
//
//import org.budo.support.assertion.Assert;
//import org.eclipse.jetty.server.Handler;
//import org.eclipse.jetty.server.Request;
//import org.eclipse.jetty.server.Server;
//
///**
// * @author lmw
// */
//public class BudoJettyHandlerWrapper implements Handler {
//    private Handler handler;
//
//    public Handler getHandler() {
//        return handler;
//    }
//
//    public void setHandler(Handler handler) {
//        this.handler = handler;
//    }
//
//    public BudoJettyHandlerWrapper() {}
//
//    public BudoJettyHandlerWrapper(Handler handler) {
//        this.setHandler(handler);
//    }
//
//    private Handler getHandlerNotNull() {
//        return Assert.notNull(this.getHandler(), "this.handler is null, this=" + this);
//    }
//
//    @Override
//    public void start() throws Exception {
//        this.getHandlerNotNull().start();
//    }
//
//    @Override
//    public void stop() throws Exception {
//        this.getHandlerNotNull().stop();
//    }
//
//    @Override
//    public boolean isRunning() {
//        return this.getHandlerNotNull().isRunning();
//    }
//
//    @Override
//    public boolean isStarted() {
//        return this.getHandlerNotNull().isStarted();
//    }
//
//    @Override
//    public boolean isStarting() {
//        return this.getHandlerNotNull().isStarting();
//    }
//
//    @Override
//    public boolean isStopping() {
//        return this.getHandlerNotNull().isStopping();
//    }
//
//    @Override
//    public boolean isStopped() {
//        return this.getHandlerNotNull().isStopped();
//    }
//
//    @Override
//    public boolean isFailed() {
//        return this.getHandlerNotNull().isFailed();
//    }
//
//    @Override
//    public void addLifeCycleListener(Listener listener) {
//        this.getHandlerNotNull().addLifeCycleListener(listener);
//    }
//
//    @Override
//    public void removeLifeCycleListener(Listener listener) {
//        this.getHandlerNotNull().removeLifeCycleListener(listener);
//    }
//
//    @Override
//    public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
//        this.getHandlerNotNull().handle(target, baseRequest, request, response);
//    }
//
//    @Override
//    public void setServer(Server server) {
//        this.getHandlerNotNull().setServer(server);
//    }
//
//    @Override
//    public Server getServer() {
//        return this.getHandlerNotNull().getServer();
//    }
//
//    @Override
//    public void destroy() {
//        this.getHandlerNotNull().destroy();
//    }
//}
